package com.haikesi.api.device.service;


import com.haikesi.api.base.R;
import com.haikesi.api.base.Type;
import com.haikesi.api.device.domain.vo.*;

import java.util.List;

public interface IDeviceService {
    /**
     * 得到设备集合
     * @param searchVO
     * @return
     */
    List<DeviceVO> getList(DeviceSearchVO searchVO);

    /**
     * 更新设备
     * @param updateVO
     */
    void update(DeviceUpdateVO updateVO);


    /**
     * 更新远程设备
     * @param account : 订阅账号
     * @return
     */
     int importApcosDervice(String account) ;

      /**
       * 设备控制
       * @param deviceControlVO
       */
      void controlDervice(DeviceControlVO deviceControlVO);

    /**
     * 批量修改设备位置
     * @param updateVO
     */
    void batch_up_position(DeviceBatchUpdateVO updateVO);

    /**
     * 批量修改设备机构
     * @param updateVO
     */
    void batch_up_organization(DeviceBatchUpdateVO updateVO);

    /**
     * 设备控制（查询类设备，返回具体参数）
     * @param deviceControlVO
     */
    R controlDervice_s(DeviceControlVO deviceControlVO);

    void deleteBySerialNum(String id, String account);
}
